In the conversion of a string to an XmString, the following format rules are applied:
The string is treated as a list of words.
Words in the list are concatenated with a single space between them, no matter what the original white space between them.
Individual words may be quoted either by quotes "..." or brackets {...}. White space within a quoted word is preserved, but the quote marks or brackets are discarded.
If a word begins with the character '@' then it is treated as a control word for the formatting. @n places a newline component in the XmString. @L or @l places a left-to-right component in the XmString. @R or @r places a right-to-left component in the XmString. @fX places a font component in the XmString, where the single character X is the font tag. @f(XY places a font component in the XmString, where the two character XY is the font tag. @F{font-tag} places a font component in the XmString, where font-tag is the font tag of any length.
The font tag is matched with a font as specified in the fontList of the widget that the XmString is rendered in. The fontList is a list of font-name=font-tag specifiers separated by commas.
Example
.label setValues \
-fontList "9x15=R, 9x15bold=bold" \
-labelString "ordinary @r right-to-left @f{bold}
right-to-left bold text
@fR @l ordinary font, left to right"
Jan Newmarch, University of Canberra